{VERSION 6 0 "IBM INTEL NT" "6.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 1 12 255 0 0 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "2D Comment" -1 18 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "2D Output" -1 20 "Times" 1 12 0 0 255 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Normal" -1 30 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Text" -1 201 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 219 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 220 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 221 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 222 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 223 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 224 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 225 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 226 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 227 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 } {CSTYLE "" -1 228 "Times" 1 12 0 0 0 1 1 2 1 2 2 2 0 0 0 1 }{CSTYLE " " -1 229 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 230 " Times" 1 12 0 0 0 1 1 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 231 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 232 "Times" 1 12 0 0 0 1 2 1 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 233 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 234 "Times" 1 12 0 0 0 1 2 1 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 235 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 } {CSTYLE "" -1 236 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 237 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 238 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 239 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 240 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 241 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 242 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 243 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 244 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 245 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 246 " Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 247 "Times" 1 12 0 0 0 1 2 1 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 248 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 249 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 250 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "" -1 251 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 252 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 253 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 254 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 255 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 256 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 257 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 258 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 259 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 260 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 261 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 262 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 263 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 264 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 265 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 266 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 267 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 268 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE " " -1 269 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 270 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 271 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 272 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 273 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 274 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 275 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 276 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 277 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 278 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 279 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 280 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 281 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 282 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 283 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 284 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 285 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 286 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 287 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 288 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 289 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 290 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 291 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 292 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 293 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 294 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 295 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 296 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 297 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 298 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 299 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 300 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 301 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 302 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 303 " Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 304 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 305 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 306 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 307 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 308 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 } {CSTYLE "" -1 309 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE " " -1 310 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 311 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 312 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 313 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 314 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 315 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "" -1 316 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 317 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 2 0 2 0 2 2 0 1 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 "Times " 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 4 2 0 2 0 2 2 0 1 } {PSTYLE "Error" -1 8 1 {CSTYLE "" -1 -1 "Courier" 1 10 255 0 255 1 2 2 2 2 2 1 1 1 1 1 }1 1 0 0 0 0 2 0 2 0 2 2 0 1 }{PSTYLE "Maple Output " -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 } 3 1 0 0 0 0 2 0 2 0 2 2 0 1 }{PSTYLE "Left Justified Maple Output" -1 12 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 2 0 2 0 2 2 0 1 }{PSTYLE "Normal256" -1 200 1 {CSTYLE "" -1 -1 " Times" 1 12 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 2 0 2 0 2 2 0 1 } {PSTYLE "Heading 1260" -1 204 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }3 1 0 0 8 4 2 0 2 0 2 2 0 1 }{PSTYLE "Normal259" -1 205 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 1 0 0 0 0 2 0 2 0 2 2 0 1 }{PSTYLE "Title257" -1 207 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }3 1 0 0 12 12 2 0 2 0 2 2 0 1 }{PSTYLE "No Name" -1 210 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }3 1 0 0 0 0 2 0 2 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 207 "" 0 "" {TEXT -1 9 "Lecture 4" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 17 "Indexed variables" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 85 "As we have discuss ed before, an alternative way to create several variable is to use " } {TEXT 219 17 "indexed variables" }{TEXT -1 34 ". These are variables o f the form " }{TEXT 220 4 "x[i]" }{TEXT -1 25 " which Maple exhibits a s " }{XPPEDIT 18 0 "x[i];" "6#&%\"xG6#%\"iG" }{TEXT 221 2 " ." }{TEXT -1 15 " That is, the " }{TEXT 222 1 "i" }{TEXT -1 156 " becomes a sub script. This is the same in Maple 6, 7, 8, and 9 as in previous versi ons of Maple. [although the notation is similar to that for arrays, a n " }{TEXT 223 16 "indexed variable" }{TEXT -1 11 " is not an " } {TEXT 224 5 "array" }{TEXT -1 80 ". We will discuss the distinction la ter. Indexed variables are actually of type " }{TEXT 225 5 "table" } {TEXT -1 2 ".]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "for i from 1 to 5 do\n x [i]:=i^2;\nend do;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"xG6#\"\"\"F '" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"xG6#\"\"#\"\"%" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>&%\"xG6#\"\"$\"\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"xG6#\"\"%\"#;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> &%\"xG6#\"\"&\"#D" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 89 "One may also use doubly, triply, etc., subscribed variables as in the following ex amples:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "A[2,5]:=2;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"AG6$\"\"#\"\"&F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "z[1,2,2,3]:=x^2 + sin(x);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%\"zG6&\"\"\"\"\"#F(\"\"$,&*$)%\"xGF(F'F'- %$sinG6#F-F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 10 "Sequences " }{TEXT 226 25 "(max, min, s eq, ithprime)" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 " " {TEXT 227 27 "Perhaps the most important " }{TEXT 228 5 "types" } {TEXT 229 4 " or " }{TEXT 230 7 "classes" }{TEXT 231 25 " of objects i n Maple are " }{TEXT 232 16 "sequences, sets " }{TEXT 233 4 "and " } {TEXT 234 5 "lists" }{TEXT 235 44 ". It is vital to understand these t horoughly" }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "We start with some examples of " }{TEXT 201 9 "sequences" }{TEXT -1 4 ": A " }{TEXT 236 8 "sequence" }{TEXT -1 3 " (" }{TEXT 237 3 "aka" }{TEXT -1 4 " an " }{TEXT 238 10 "expres sion" }{TEXT -1 1 " " }{TEXT 239 8 "sequence" }{TEXT -1 162 ") is just a bunch of expressions separated by commas: The expressions may be nu mbers, variables, functions, etc. -- and they need not all be differen t or similar." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "sequence1:=1,2,1,A,3,x,sin (t);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%*sequence1G6)\"\"\"\"\"#F&% \"AG\"\"$%\"xG-%$sinG6#%\"tG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 3 "If " }{TEXT 240 9 "sequence1" }{TEXT -1 20 " is a sequence then " } {TEXT 241 12 "sequence1[i]" }{TEXT -1 47 " is the i-th term of the seq uence, for example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "sequ ence1[1], sequence1[2], sequence1[3],sequence1[7];" }}{PARA 11 "" 1 " " {XPPMATH 20 "6&\"\"\"\"\"#F#-%$sinG6#%\"tG" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 26 "We make another sequence:" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 24 "sequence2:=55,7,33,-1,4;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%*sequence2G6'\"#b\"\"(\"#L!\"\"\"\"%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 90 "The maximum and minimum of a sequence of \+ real numbers is obtained by use of the functions " }{TEXT 242 3 "max" }{TEXT -1 5 " and " }{TEXT 243 3 "min" }{TEXT -1 31 ", as in the follo wing examples:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "min(seque nce2), max(sequence2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$!\"\"\"#b" } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "Note that the solution to a " }{TEXT 244 5 "solve" } {TEXT -1 51 " command as in the following example is given as a " } {TEXT 245 8 "sequence" }{TEXT -1 58 ". We name it so we can manipulate the different solutions:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "p:=x^3-60*x^2 + 1100*x - 6000;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# >%\"pG,**$)%\"xG\"\"$\"\"\"F**&\"#gF*)F(\"\"#F*!\"\"*&\"%+6F*F(F*F*\"% +gF/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "sequence3:=solve(p= 0,x);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%*sequence3G6%\"#5\"#?\"#I" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 158 "Note that if the variable x is replaced by \{x\} then we get a different output but still a sequence . In this case a sequence of sets of the form \{x = a\} where " } {TEXT 317 1 "a" }{TEXT -1 32 " is a solution to the equation. " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "solve(p=0,\{x\});" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%<#/%\"xG\"#5<#/F%\"#?<#/F%\"#I" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 124 "Note that we can get hold of individual \+ solutions as follows. This is useful to keep from recopying complicat ed solutions. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence3 [1]; " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "sequence3[2];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #\"#?" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "sequence3[3];" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"#I" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 246 13 "The function " }{TEXT 247 3 "seq" }{TEXT 248 187 " is a very i mportant way to form sequences. It can be used to do many things that \+ can be done with do loops and when that's possible should be done. Gen erally this is a faster way to go. " }{TEXT -1 96 "For example, if we \+ wish to apply some function f to the numbers -1, 2, 3, . . . , 10 we c an use " }{TEXT 249 3 "seq" }{TEXT -1 12 " as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "sequence4:=seq(f(i),i=-1..10);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6.-%\"fG6#!\"\"-F$6#\"\"!-F$6#\"\"\"-F$6 #\"\"#-F$6#\"\"$-F$6#\"\"%-F$6#\"\"&-F$6#\"\"'-F$6#\"\"(-F$6#\"\")-F$6 #\"\"*-F$6#\"#5" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 16 "For example, i f " }{XPPEDIT 18 0 "f(x) = x^2;" "6#/-%\"fG6#%\"xG*$F'\"\"#" }{TEXT -1 9 " we have:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "sequence 4:=seq(i^2,i=-1..10);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6.\"\"\"\"\"!F# \"\"%\"\"*\"#;\"#D\"#O\"#\\\"#k\"#\")\"$+\"" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 147 "We could also form this sequence with the following do loop. We use s to indicate the sequence and we start by setting s to be the NULL sequence. " }{TEXT 250 40 "You should study this example \+ carefully!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "s:=NULL;\n" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "for i from -1 to 10 do\n s :=s,i^2:\nend do:\nsequenc4:=s;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6.\" \"\"\"\"!F#\"\"%\"\"*\"#;\"#D\"#O\"#\\\"#k\"#\")\"$+\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 75 "Notice how much easier this loop was exec uted with the sequance!!\nIn Maple " }{TEXT 251 11 "ithprime(n)" } {TEXT -1 27 " is the n-th prime number. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "ithprime(1), ithprime(2), ithprime(3), ithprime(1000) ; " }}{PARA 11 "" 1 "" {XPPMATH 20 "6&\"\"#\"\"$\"\"&\"%>z" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "We can get a sequence consisting of the f irst 20 primes as follows:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "sequence5:=seq(ithprime(k),k =1..20);" }}{PARA 12 "" 1 "" {XPPMATH 20 "66\"\"#\"\"$\"\"&\"\"(\"#6\" #8\"#<\"#>\"#B\"#H\"#J\"#P\"#T\"#V\"#Z\"#`\"#f\"#h\"#n\"#r" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 8 "One can " }{TEXT 252 11 "concatenate" } {TEXT -1 23 " sequences as follows:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "sequence4;\nsequence5;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6.\"\"\"\"\"!F#\"\"%\"\"*\"#;\"#D\"#O\"#\\\"#k\"#\")\"$+\"" }} {PARA 12 "" 1 "" {XPPMATH 20 "66\"\"#\"\"$\"\"&\"\"(\"#6\"#8\"#<\"#>\" #B\"#H\"#J\"#P\"#T\"#V\"#Z\"#`\"#f\"#h\"#n\"#r" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 31 "sequence6:=sequence4,sequence5;" }}{PARA 12 " " 1 "" {XPPMATH 20 "6B\"\"\"\"\"!F#\"\"%\"\"*\"#;\"#D\"#O\"#\\\"#k\"# \")\"$+\"\"\"#\"\"$\"\"&\"\"(\"#6\"#8\"#<\"#>\"#B\"#H\"#J\"#P\"#T\"#V \"#Z\"#`\"#f\"#h\"#n\"#r" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 27 "A sim pler example would be:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "s eqA:=a,b,c;\nseqB:=x,y,z,w;\nseqC:=seqA,seqB,seqA;" }}{PARA 11 "" 1 " " {XPPMATH 20 "6%%\"aG%\"bG%\"cG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&% \"xG%\"yG%\"zG%\"wG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6,%\"aG%\"bG%\"cG %\"xG%\"yG%\"zG%\"wGF#F$F%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 37 "\nN ow consider the following sequence:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "sequence7:=a,b,c,d,e,f,g,h;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%\"aG%\"bG%\"cG%\"dG%\"eG%\"fG%\"gG%\"hG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 74 "One can select more than one element of a sequence at a time. For example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "sequence7[2..4];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%% \"bG%\"cG%\"dG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 42 "To get the firs t element on the right use:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence7[-1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%\"hG" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "To get the second element from the right use:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence7[-2];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# %\"gG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 "We can use this to rever se a sequence:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "S1:=seq(i ,i=1..7);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6)\"\"\"\"\"#\"\"$\"\"%\"\" &\"\"'\"\"(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "S2:=seq(S1[- i],i=1..7);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6)\"\"(\"\"'\"\"&\"\"%\" \"$\"\"#\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "The empty seque nce is given by " }{TEXT 253 8 "NULL -- " }{TEXT 201 24 "as we already say above." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "S3:=NULL;\n \nS4:=x,x,S3,y;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%%\"xGF#%\"yG" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "In general, " }{TEXT 254 17 "seq(f (i), i = X) " }{TEXT -1 15 "is the same as " }{TEXT 255 28 "seq(f(X[i] ), i=1..nops(X)). " }{TEXT -1 12 "For example:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 59 "X:=[1,3,5,7]:\nseq(f(i), i = X);\nseq(f(X[i]), i=1..nops(X));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&-%\"fG6#\"\"\"-F$6# \"\"$-F$6#\"\"&-F$6#\"\"(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&-%\"fG6# \"\"\"-F$6#\"\"$-F$6#\"\"&-F$6#\"\"(" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 5 "Sets " }{TEXT 256 47 "(union, intersect, subset, nops, min us, member)" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 17 "One can obtain a " }{TEXT 257 3 "set" }{TEXT -1 8 " from a " }{TEXT 258 8 "sequence" } {TEXT -1 109 " by placing braces around it. We illustrate this below. \+ We also illustrate some basic set operations such as " }{TEXT 259 48 " union, intersect, minus, subset, nops and member" }{TEXT -1 2 ". " } {TEXT 260 79 "Note, however, that the user has no control over the ord er of elements of a set" }{TEXT -1 89 ". To control the order of eleme nts we must use sequences or lists --as we will see below:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart:" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 18 "set1:=\{4,3,3,2,1\};" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%set1G<&\"\"\"\"\"#\"\"$\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "set2:=\{4,4,5,5,6\};" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%set2G<%\"\"%\"\"&\"\"'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "set3:=set1 union set2;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%set 3G<(\"\"\"\"\"#\"\"$\"\"%\"\"&\"\"'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "set4:=set1 intersect set2;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%set4G<#\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "set5:=set1 minus set2;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%s et5G<%\"\"\"\"\"#\"\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "s et5 subset set3;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "set5 subset set4;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 60 "Let's form a sequence and then turn the sequence into a set." } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "ss:=seq(i,i=0..9);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#ssG6,\"\"!\"\"\"\"\"#\"\"$\"\"%\"\" &\"\"'\"\"(\"\")\"\"*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "se t6:=\{ss\};" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%set6G<,\"\"!\"\"\"\" \"#\"\"$\"\"%\"\"&\"\"'\"\"(\"\")\"\"*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 23 "Here's another example." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "seq(x^j-1,j=1..5);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 ',&%\"xG\"\"\"F%!\"\",&*$)F$\"\"#F%F%F%F&,&*$)F$\"\"$F%F%F%F&,&*$)F$\" \"%F%F%F%F&,&*$)F$\"\"&F%F%F%F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "set7:=\{seq(x^j-1,j=1..5)\};" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#>%%set7G<',&%\"xG\"\"\"F(!\"\",&*$)F'\"\"#F(F(F(F),&*$)F'\"\"$F(F(F( F),&*$)F'\"\"%F(F(F(F),&*$)F'\"\"&F(F(F(F)" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "The " }{TEXT 261 9 "empty set" }{TEXT -1 19 " is denoted b y \{\};\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "\{1,2,3\} inte rsect \{4,5,6\};" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 262 4 "nops" }{TEXT -1 49 " is used to find the \+ number of elements in a set:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "nops(set7);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "nops(\{\});" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 33 "Note that nops will not work for " }{TEXT 263 9 "sequences" }{TEXT -1 1 "!" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "nops(1,2,3,4);" }}{PARA 8 " " 1 "" {TEXT -1 62 "Error, invalid input: nops expects 1 argument, but received 4\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "But " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "nops(\{1,2,3,4\});" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "t:=1,1,3,4,4;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"tG6'\"\"\"F& \"\"$\"\"%F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 78 "Note that the fol lowing does not give the number of elements in the sequence t" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "nops(t);" }}{PARA 8 "" 1 "" {TEXT -1 62 "Error, invalid input: nops expects 1 argument, but receiv ed 5\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 86 "But we can convert to t o a list and get the number of elements in the list as follows:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "nops([t]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 286 "If S \+ is a set then S[i] is the i-th element of the set, but you have no way of knowing what order Maple assigns to the elements of the set S. And the order may change in a single worksheet session. So do NOT make an y assumptions about the order even if you see the order on the monitor ." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "set7;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<',&%\"xG\"\"\"F&!\"\",&*$)F%\"\"#F&F&F&F',&*$)F%\" \"$F&F&F&F',&*$)F%\"\"%F&F&F&F',&*$)F%\"\"&F&F&F&F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "for i from 1 to nops(set7) do i,set7[i]; \+ end do;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"\",&%\"xGF#F#!\"\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"#,&*$)%\"xGF#\"\"\"F(F(!\"\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"$,&*$)%\"xGF#\"\"\"F(F(!\"\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"%,&*$)%\"xGF#\"\"\"F(F(!\"\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"&,&*$)%\"xGF#\"\"\"F(F(!\"\"" }}} {EXCHG {PARA 0 "" 0 "" {TEXT 264 10 "Membership" }{TEXT -1 31 " in a s et is tested as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 " set7;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<',&%\"xG\"\"\"F&!\"\",&*$)F% \"\"#F&F&F&F',&*$)F%\"\"$F&F&F&F',&*$)F%\"\"%F&F&F&F',&*$)F%\"\"&F&F&F &F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "member(x^2-1,set7); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "member(x,set7);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #%&falseG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "Note carefully the f ollowing way of putting x into the set set7:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "if member(x,set7) = false then \n set7:=set7 u nion \{x\}; \nend if;\n" }{XPPMATH 20 "6#<(,&%\"xG\"\"\"F&!\"\",&*$)F% \"\"#F&F&F&F',&*$)F%\"\"$F&F&F&F',&*$)F%\"\"%F&F&F&F',&*$)F%\"\"&F&F&F &F'F%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%set7G<(,&%\"xG\"\"\"F(!\" \",&*$)F'\"\"#F(F(F(F),&*$)F'\"\"$F(F(F(F),&*$)F'\"\"%F(F(F(F),&*$)F' \"\"&F(F(F(F)F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 85 "Recall the example in the previous section on the us e of solve. Let's repeat it here:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "p:=x^3-60*x^2 + 1100*x - 6000;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"pG,**$)%\"xG\"\"$\"\"\"F**&\"#gF*)F(\"\"#F*!\"\"*& \"%+6F*F(F*F*\"%+gF/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "seq uence3:=solve(p=0,x);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%*sequence3G 6%\"#5\"#?\"#I" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence3 [1]; " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#5" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 112 "Now we make a small change in the solve command. Name ly we replace x by \{x\}: See the difference in the output. " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "sequence4:=solve(p=0,\{x\}); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%*sequence4G6%<#/%\"xG\"#5<#/F(\" #?<#/F(\"#I" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "sequence4[1] ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<#/%\"xG\"#5" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 64 "This will be convenient for some purposes as we sh all see later." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}} {SECT 1 {PARA 3 "" 0 "" {TEXT -1 6 "Lists " }{TEXT 265 43 "(sort, nop s, op, concatenation of lists)" }}{EXCHG {PARA 0 "" 0 "" {TEXT 266 5 "Lists" }{TEXT 267 1 " " }{TEXT -1 68 "may be formed by placing a se quence in square brackets, as follows: " }{TEXT 268 36 "In this case o rder is all important." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "L ist1:=[4,0,2,2,3,1,4];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7)\"\"%\"\"! \"\"#F&\"\"$\"\"\"F$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 269 5 "sort " }{TEXT -1 58 " is useful for rearranging a list in non-d ecreasing order." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "sort(Li st1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7)\"\"!\"\"\"\"\"#F&\"\"$\"\" %F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 270 4 "nops" }{TEXT -1 43 "(List1 ) gives the length of the list List1:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "N:=nops(List1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\" \"(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "Compare the following:" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "nops([1,3,3,3,3]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "nops(\{1,3,3,3,3\});" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"#" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 106 "Notice again that wi th sets, repeated elements are eliminated. Lists preserve these.\nThe i-th element in " }{TEXT 271 5 "List1" }{TEXT -1 13 " is given by " } {TEXT 272 9 "List1[i]:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "for i from 1 to N do \n i,L ist1[i]; \nend do;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"\"\"\"%" }} {PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"#\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"$\"\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"%\"\" #" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"&\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"'\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$\"\"(\" \"%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 65 "We can select the list of \+ element indexed from 2 to 4 as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "List1[2..4];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%\" \"!\"\"#F%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 104 "The right most ele ment of the list has index -1. The second from the end has index -2, e tc. For example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "List1; \nList1[-1],List1[-2], List1[-3];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7 )\"\"%\"\"!\"\"#F&\"\"$\"\"\"F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\" \"%\"\"\"\"\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 3 "To " }{TEXT 273 11 "concatenate" }{TEXT -1 81 " lists we need to first recover the und erlying sequence by applying the function " }{TEXT 274 2 "op" }{TEXT -1 49 ". This also works for sets, as we now illustrate:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "List1; \nop(List1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7)\"\"%\"\"!\"\"#F&\"\"$\"\"\"F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6)\"\"%\"\"!\"\"#F%\"\"$\"\"\"F#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "set1;\nop(set1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<&\"\"\"\"\"#\"\"$\"\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&\"\"\"\"\"#\"\"$\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "List1;\nList2:=[x,y,z];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7)\"\"% \"\"!\"\"#F&\"\"$\"\"\"F$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%%\"xG% \"yG%\"zG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 46 "Here's the way to co ncatenate List1 and List2:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "List3:=[op(List1),op(List2)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7 ,\"\"%\"\"!\"\"#F&\"\"$\"\"\"F$%\"xG%\"yG%\"zG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 53 "Here's how to add a new element to the end of a list :" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "List4:=[op(List3),`a n ew element`];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7-\"\"%\"\"!\"\"#F&\" \"$\"\"\"F$%\"xG%\"yG%\"zG%.a~new~elementG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "The " }{TEXT 275 10 "empty list" }{TEXT -1 20 " is denoted by [ ] ;" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 97 "Let's make a list of the primes numbers up to 100: We wil l put them in a list we will call List5:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 85 "List5:=[]:\nfor i from 1 to 100 do\n if isprime(i) t hen \n List5:=[op(List5),i]; \n" }{MPLTEXT 1 0 24 " end if;\nend do;\nList5;" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7;\"\"#\"\"$\"\"&\"\"( \"#6\"#8\"#<\"#>\"#B\"#H\"#J\"#P\"#T\"#V\"#Z\"#`\"#f\"#h\"#n\"#r\"#t\" #z\"#$)\"#*)\"#(*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 52 "An easier wa y to create the same list is as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 76 "seq5:=NULL:\nfor i from 1 to 100 do\n if isprime(i) then \n seq5: =seq5,i; \n" }{MPLTEXT 1 0 32 " end if;\nend do;\nList5:=[seq5];" }} {PARA 12 "" 1 "" {XPPMATH 20 "6#>%&List5G7;\"\"#\"\"$\"\"&\"\"(\"#6\"# 8\"#<\"#>\"#B\"#H\"#J\"#P\"#T\"#V\"#Z\"#`\"#f\"#h\"#n\"#r\"#t\"#z\"#$) \"#*)\"#(*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 194 "As mentioned above one can also select elements of a list in reverse order. For example, the last element of the list List is found by List[-1]. The second fr om last is given by List[-2], etc..." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "List:=[seq(i, i=1..10)];\nList[-1], List[-2], List[-3 ];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"\"\"\"\"#\"\"$\"\"%\"\"&\"\" '\"\"(\"\")\"\"*\"#5" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"#5\"\"*\"\") " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 "We can obtain the reverse of \+ the list " }{TEXT 276 4 "List" }{TEXT -1 18 " above as follows:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "revList:=[seq(List[-i],i=1.. 10)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"#5\"\"*\"\")\"\"(\"\"'\" \"&\"\"%\"\"$\"\"#\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 " " }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 10 "Conversion" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 67 "One can convert lists to sets and vice versa by using the function " }{TEXT 277 7 "convert" }{TEXT -1 1 ":" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 38 "L:=[1,4,1,2,3];\nSetL:=convert(L, set);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#7'\"\"\"\"\"%F$\"\"#\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<&\"\"\"\"\"#\"\"$\"\"%" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 37 "S:=\{1,2,3,5\};\nListS:=convert(S,list);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#<&\"\"\"\"\"#\"\"$\"\"&" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#7&\"\"\"\"\"#\"\"$\"\"&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "We can convert from " }{TEXT 278 3 "set" }{TEXT -1 5 " and " }{TEXT 279 4 "list" }{TEXT -1 4 " to " }{TEXT 280 8 "sequence" }{TEXT -1 11 " by use of " }{TEXT 281 2 "op" }{TEXT -1 27 " as already noted above or " }{TEXT 282 5 "set[]" }{TEXT -1 5 " and " }{TEXT 283 6 "list[]" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "op(L);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'\"\"\"\"\"%F#\"\"#\"\"$" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "op(S);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&\"\"\"\"\"#\"\"$\"\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "seqL:=L[];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'\"\"\" \"\"%F#\"\"#\"\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "seqS:= S[];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&\"\"\"\"\"#\"\"$\"\"&" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "Coversely, to convert " }{TEXT 284 8 "sequence" }{TEXT -1 4 " to " }{TEXT 285 3 "set" }{TEXT -1 4 " o r " }{TEXT 286 4 "list" }{TEXT -1 11 ", just use " }{TEXT 287 11 "\{se quence\} " }{TEXT -1 3 "or " }{TEXT 288 10 "[sequence]" }{TEXT -1 1 ": " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "\{seqL\},\{seqS\},[seqL ],[seqS];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&<&\"\"\"\"\"#\"\"$\"\"%<& F$F%F&\"\"&7'F$F'F$F%F&7&F$F%F&F)" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 62 "We also can convert a positive integer between bases. convert(" } {TEXT 289 1 "n" }{TEXT -1 8 ", base, " }{TEXT 290 4 "beta" }{TEXT -1 30 ") converts the base 10 number " }{TEXT 291 1 "n" }{TEXT -1 9 " to \+ base " }{TEXT 292 4 "beta" }{TEXT -1 10 ". convert(" }{TEXT 293 1 "l" }{TEXT -1 8 ", base, " }{TEXT 294 5 "alpha" }{TEXT -1 2 ", " }{TEXT 295 4 "beta" }{TEXT -1 29 ") convert the list of digits " }{TEXT 296 1 "l" }{TEXT -1 9 " in base " }{TEXT 297 5 "alpha" }{TEXT -1 9 " to ba se " }{TEXT 298 4 "beta" }{TEXT -1 50 ". The list of digits is interpr eted as the number " }{XPPEDIT 18 0 "L = sum(l[k]*alpha^(k-1), k = 1 . . nops(l));" "6#/%\"LG-%$sumG6$*&&%\"lG6#%\"kG\"\"\")%&alphaG,&F,F-F-! \"\"F-/F,;F--%%nopsG6#F*" }{TEXT -1 21 ". It is assumed that " }{TEXT 299 17 "0 <= l[k] < alpha" }{TEXT -1 95 " and that L is positive. Upon conversion, the number L is returned as a list of digits in base " } {TEXT 300 4 "beta" }{TEXT -1 31 ". Check the following examples." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "convert(27,base,3);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7&\"\"!F$ F$\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "convert([1,0,0, 1,1],base,2,10);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"&\"\"#" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 " " {TEXT -1 20 " round, floor, ceil" }}{PARA 0 "" 0 "" {TEXT -1 0 "" } }{EXCHG {PARA 3 "" 0 "" {TEXT 301 5 "round" }{TEXT 30 2 " (" }{TEXT 302 1 "x" }{TEXT 30 3 ") -" }{TEXT 201 23 " the nearest integer to" } {TEXT 30 1 " " }{TEXT 303 1 "x" }}{PARA 3 "" 0 "" {TEXT 304 9 "floor(x ) " }{TEXT 30 3 " - " }{TEXT 201 20 "the largest integer " }{XPPEDIT 18 0 "n <= x;" "6#1%\"nG%\"xG" }{TEXT -1 1 "." }}{PARA 3 "" 0 "" {TEXT 305 4 "ceil" }{TEXT 30 1 "(" }{TEXT 306 1 "x" }{TEXT 30 4 ") - \+ " }{TEXT 201 34 "the smallest integer n such that " }{XPPEDIT 18 0 "x <= n;" "6#1%\"xG%\"nG" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{PARA 0 "" 0 "" {TEXT -1 23 "Here are some examples:" }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "L:=[ -3.4,-3.6,3.6,3.5,3.4,3.5,3,-3]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 115 "for x in L do\n print(`if x = `,x,` round(x) = `,ro und(x),` floor(x) = `,floor(x),` ceil(x) = `,ceil(x));\nend do;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G$!#M!\"\"%-~round(x)~=~G!\"$ %.~~floor(x)~=~G!\"%%-~~ceil(x)~=~GF(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G$!#O!\"\"%-~round(x)~=~G!\"%%.~~floor(x)~=~GF(%-~~ceil(x) ~=~G!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G$\"#O!\"\"%-~rou nd(x)~=~G\"\"%%.~~floor(x)~=~G\"\"$%-~~ceil(x)~=~GF(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G$\"#N!\"\"%-~round(x)~=~G\"\"%%.~~floor(x) ~=~G\"\"$%-~~ceil(x)~=~GF(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~= ~G$\"#M!\"\"%-~round(x)~=~G\"\"$%.~~floor(x)~=~GF(%-~~ceil(x)~=~G\"\"% " }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G$\"#N!\"\"%-~round(x)~=~ G\"\"%%.~~floor(x)~=~G\"\"$%-~~ceil(x)~=~GF(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G\"\"$%-~round(x)~=~GF$%.~~floor(x)~=~GF$%-~~c eil(x)~=~GF$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6*%(if~x~=~G!\"$%-~round (x)~=~GF$%.~~floor(x)~=~GF$%-~~ceil(x)~=~GF$" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 25 "Sometimes one must apply " }{TEXT 307 5 "evalf" }{TEXT -1 46 " before invoking these functions. For example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "floor(sin(10^8));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 41 "But f loor cannot evaluate the following." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "floor(sin(10^10));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #-%&floorG6#-%$sinG6#\",+++++\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 42 "We must first apply evalf to make it work." }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 25 "floor(evalf(sin(10^10)));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#!\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "flo or(sqrt(10^9 + 1));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"&A;$" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "However, compare the following:" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "floor(sqrt(10^10 + 1));" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#-%&floorG6#*$)\",,++++\"#\"\"\"\"\"#F *" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "floor(evalf(sqrt(10^10 +1)));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"'++5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "floor(evalf(sqrt(10^100 + 1)));" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#\"T+++++++++++++++++++++++++\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 14 "The digits of " }{XPPEDIT 18 0 "pi;" "6#%#piG" }{TEXT -1 1 " " }} {EXCHG {PARA 200 "" 0 "" {TEXT 201 140 "Here we write a procedure to e xplore the question of whether or not the digits 0 to 9 are uniformly \+ distributed among the first N digits of " }{XPPEDIT 201 0 "pi;" "6#%#p iG" }{TEXT -1 0 "" }{TEXT 201 1 "." }{TEXT -1 1 "\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 16 "Use the command " }{TEXT 308 13 "?convert/base " }{TEXT -1 37 " to find out more about the function " }{TEXT 309 7 "c onvert" }{TEXT -1 25 " used below. Actually, " }{TEXT 310 7 "convert " }{TEXT -1 60 " has many uses in Maple, as we will see later in the c ourse." }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 311 6 "Digits" }{TEXT -1 129 " is an \"environmental\" variable \+ that tells how many digits are carried in floating point operations. T he default is 10 as we see:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "Digits;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "evalf(Pi);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+aEf TJ!\"*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 79 "The following sets the \+ number of digit carried by floating point numbers to 30:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "Digits:=30;" }{TEXT -1 5 " but " } {TEXT 312 8 "\"digits\"" }{TEXT -1 24 " with lower case letter " } {TEXT 313 1 "d" }{TEXT -1 14 " doesn't work." }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#I" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "eval f(Pi);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"?G$QVEYQKz*e`EfTJ!#H" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 72 "Now we set the number of digits ca rried by floating point numbers to 3. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "n:=3:\nDigits:=3; " }}{PARA 0 "" 0 "" {TEXT -1 0 "" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "X:=evalf(Pi);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"$ 9$!\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "10^(n-1)*X;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"$9$\"\"!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "X:=floor(10^(n-1)*X); " }{TEXT -1 51 "This convert s X to an integer with the same digits." }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$9$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "X:=convert(X ,base, 10); " }{TEXT -1 178 "Note the digits appear in reversed order, but they are now in a list which makes them easier to handle. There a re alternative ways to get at the digits that we may discuss later." } }{PARA 11 "" 1 "" {XPPMATH 20 "6#7%\"\"%\"\"\"\"\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "Let's do this again with n = 100 instead of jus t 3:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 57 "n:=100;\nDigits:=n;\nX:=evalf(Pi,n);\nX:=floor(10^(n- 1)*X);\n" }{MPLTEXT 1 0 23 "X:=convert(X,base, 10);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#\"$+\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$+\"" }} {PARA 12 "" 1 "" {XPPMATH 20 "6#$\"_qoq6U`#[.G')**3iG1k\"yI#fW\\(4#e5v $*Rpr>%)G]zKQVEYQKz*e`EfTJ!#**" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#\"_q oq6U`#[.G')**3iG1k\"yI#fW\\(4#e5v$*Rpr>%)G]zKQVEYQKz*e`EfTJ" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7`q\"\")\"\"'\"\"!\"\"(\"\"\"F(\"\"#\"\"%\" \"$\"\"&F)F$F*F+F&F$F)F%F$\"\"*F-F$F&F)F%F$F)F%F&F*F%F(F$F'F&F+F)F-F,F *F*F-F*F'F-F&F)F$F,F&F(F,F'F+F-F-F+F-F%F(F'F-F(F*F$F$F)F&F,F-F'F)F+F$F +F+F*F%F)F%F*F$F+F)F+F-F'F-F$F,F+F,F%F)F-F,F(F*F(F+" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "nops(X);" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#\"$+\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 85 "Now we shall count th e number of times each digit appears in the first 100 digits of " } {XPPEDIT 18 0 "Pi;" "6#%#PiG" }{TEXT -1 146 ". We will let c[0] be the number of times 0 appears, c[1] be the number of times 1 appears, etc ... First we initialize the 10 variables c[i] to 0." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for i from 0 to 9 do c[i]:=0; end do:" } {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "for k from \+ 1 to n do\n j:=X[k]; \n c[j]:=c[j] + 1;\nend do:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 65 "Now we exhibit the values of the c[i]'s in a sequ ence as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "[seq(c[ j],j=0..9)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"\")F$\"#7F%\"#5F$ \"\"*\"\"(\"#8F)" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 86 "This says tha t the digit 0 appears 8 time, 1 appears 8 times, 2 appears 12 times, e tc." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 77 "Another way to do the counting is as follows: First set the c[i ]'s back to 0:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for i fro m 0 to 9 do c[i]:=0; end do:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "for k from 1 to n do \n c[X[k]]:=c[X[k]] + 1;\nend do:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "[seq(c[j],j=0..9)];" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"\")F$\"#7F%\"#5F$\"\"*\"\"(\"#8F) " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 19 "Now we construct a " }{TEXT 314 9 "procedure" }{TEXT -1 76 " to compute the number of times each d igit appears in the first n digits of " }{XPPEDIT 18 0 "Pi;" "6#%#PiG " }{TEXT -1 113 ". Before constructing the procedure we do it step by \+ step for a small value of n so we can see what is happening." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "restart:\n" }{TEXT -1 10 "Not e that " }{TEXT 316 6 "Digits" }{TEXT -1 79 " changes the number of di gits that will be displayed in floation point numbers." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "n:=40;\nDigits:=n;\nX:=evalf(Pi,n); \nX:=floor(10^(n-1)*X);\n" }{MPLTEXT 1 0 26 "X:=convert(X,base, 10);\n " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#S" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#S" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"I(>%)G]zKQVE YQKz*e`EfTJ!#R" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"I(>%)G]zKQVEYQKz*e `EfTJ" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7J\"\"(\"\"*\"\"\"\"\"%\"\")F (\"\"#\"\"!\"\"&F%F$F)\"\"$F(F,F,F'\"\"'F)F-F'F(F,F)F,F%F$F%F(F+F,F+F- F)F%F+F&F'F&F," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "for i fro m 0 to 9 do c[i]:=0; end do:\n " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "for k from 1 to n do\n j:=X[k]; \n c[j]:=c[j] + 1 ;\nend do:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "[seq(c[j],j=0 ..9)];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"\"\"\"\"$\"\"&\"\"(\"\"% F(F%F%F&F&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 34 "Now we make this in to a procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "numdigit s:=proc(n)\n local X,c,i,k,j;\n Digits:=n:\n X:=evalf(Pi,n);\n" } {MPLTEXT 1 0 90 " X:=floor(10^(n-1)*X):\n X:=convert(X,base, 10):\n \+ for i from 0 to 9 do c[i]:=0; end do:\n" }{MPLTEXT 1 0 59 " for k fr om 1 to n do\n j:=X[k]; \n c[j]:=c[j] + 1;\n" }{MPLTEXT 1 0 41 " end do:\n [seq(c[j],j=0..9)];\nend proc:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 15 "numdigits(100);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"\")F$\"#7F%\"#5F$\"\"*\"\"(\"#8F)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "numdigits(1000);" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#7,\"#$*\"$;\"\"$.\"F&F$\"#(*\"#%*\"#&*\"$+\"\"$1\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "numdigits(10000);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7,\"$o*\"%E5\"%@5\"$v*\"%75\"%Y5F&\"$p*\"$[*\"%95" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 15 "At the webpage " }}{PARA 0 "" 0 "" {TEXT -1 3 " " }}{PARA 210 "" 0 "" {TEXT 201 59 "http://www.cs. ruu.nl/wais/html/na-dir/sci-math-faq/pi.html " }{TEXT -1 0 "" }{TEXT 201 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 93 "you can find out how mathematicians have been able to compute the \+ first 51 billion digits of " }{XPPEDIT 18 0 "Pi;" "6#%#PiG" }{TEXT -1 156 ". Maple will not be able to do this in a reasonable amount of tim e using the method we have just described. More sophisticated techniqu es are necessary. At " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 205 "" 0 "" {TEXT 315 42 "http://mathworld.wolfram.com/PiDigits.html" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 89 "you will also see some data on the distribution of the digits 0-9 \+ in the known digits of " }{XPPEDIT 18 0 "pi;" "6#%#piG" }{TEXT -1 113 ". It appears to be true that the digits appear with approximately equ al frequency--but this has not been proven. " }}}{PARA 204 "" 0 "" {TEXT -1 2 " " }{TEXT 201 7 "- End -" }}}{MARK "1" 0 }{VIEWOPTS 0 0 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 1 1 2 33 1 1 }